#ifndef __CW_MSG_H__
#define __CW_MSG_H__

/* CAPWAP Message Type */
typedef enum cw_msg_type_
{
	CW_MSG_DISC_REQ						= 1,
	CW_MSG_DISC_RESP					= 2,
	CW_MSG_JOIN_REQ						= 3,
	CW_MSG_JOIN_RESP					= 4,
	CW_MSG_CONFIGURE_REQ				= 5,
	CW_MSG_CONFIGURE_RESP				= 6,
	CW_MSG_CONFIGURE_UPDATE_REQ			= 7,
	CW_MSG_CONFIGURE_UPDATE_RESP		= 8,
	CW_MSG_WTP_EVENT_REQ				= 9,
	CW_MSG_WTP_EVENT_RESP				= 10,
	CW_MSG_CHANGE_STATE_EVENT_REQ		= 11,
	CW_MSG_CHANGE_STATE_EVENT_RESP      = 12,
	CW_MSG_ECHO_REQ						= 13,
	CW_MSG_ECHO_RESP					= 14,
	CW_MSG_IMAGE_DATA_REQ				= 15,
	CW_MSG_IMAGE_DATA_RESP				= 16,
	CW_MSG_RESET_REQ					= 17,
	CW_MSG_RESET_RESP					= 18,
	CW_MSG_PRI_DISC_REQ					= 19,
	CW_MSG_PRI_DISC_RESP				= 20,
	CW_MSG_DATA_TRANSFER_REQ			= 21,
	CW_MSG_DATA_TRANSFER_RESP			= 22,
	CW_MSG_CLEAR_CONFIGURATION_REQ		= 23,
	CW_MSG_CLEAR_CONFIGURATION_RESP		= 24,
	CW_MSG_STATION_CONFIGURATION_REQ	= 25,
	CW_MSG_STATION_CONFIGURATION_RESP	= 26
}cw_msg_type_t;

// CAPWAP Message Elements Type Values
typedef enum cw_msg_elem_
{
	CW_ELEM_AC_DESCRIPTOR				= 1,
	CW_ELEM_AC_IPV4_LIST				= 2,
	CW_ELEM_AC_IPV6_LIST				= 3,
	CW_ELEM_AC_NAME						= 4,
	CW_ELEM_AC_NAME_INDEX				= 5,
	CW_ELEM_TIMESTAMP					= 6,
	CW_ELEM_ADD_MAC_ACL					= 7,
	CW_ELEM_ADD_STATION					= 8,
	CW_ELEM_ADD_STATIC_MAC_ACL			= 9,
	CW_ELEM_CW_CONTROL_IPV4_ADDRESS		= 10,
	CW_ELEM_CW_CONTROL_IPV6_ADDRESS		= 11,
	CW_ELEM_CW_LOCAL_IPV4_ADDRESS		= 30,
	CW_ELEM_CW_LOCAL_IPV6_ADDRESS		= 50,
	CW_ELEM_CW_TIMERS					= 12,
	CW_ELEM_DATA_TRANSFER_DATA			= 13,
	CW_ELEM_DATA_TRANSFER_MODE			= 14,
	CW_ELEM_CW_DECRYPT_ER_REPORT		= 15,
	CW_ELEM_CW_DECRYPT_ER_REPORT_PERIOD	= 16,
	CW_ELEM_DELETE_MAC_ACL				= 17,
	CW_ELEM_DELETE_STATION				= 18,
	CW_ELEM_DELETE_STATIC_MAC_ACL		= 19,
	CW_ELEM_DISCOVERY_TYPE				= 20,
	CW_ELEM_DUPLICATE_IPV4_ADDRESS		= 21,
	CW_ELEM_DUPLICATE_IPV6_ADDRESS		= 22,
	CW_ELEM_IDLE_TIMEOUT				= 23,
	CW_ELEM_IMAGE_DATA					= 24,
	CW_ELEM_IMAGE_IDENTIFIER			= 25,
	CW_ELEM_IMAGE_INFO					= 26,
	CW_ELEM_INITIATED_DOWNLOAD			= 27,
	CW_ELEM_LOCATION_DATA				= 28,
	CW_ELEM_MAX_MSG_LEN					= 29,
	CW_ELEM_RADIO_ADMIN_STATE			= 31,
	CW_ELEM_RADIO_OPERAT_STATE			= 32,
	CW_ELEM_RESULT_CODE					= 33,
	CW_ELEM_RETURNED_MSG_ELEM			= 34,
	CW_ELEM_SESSION_ID					= 35,
	CW_ELEM_STATISTICS_TIMER			= 36,
	CW_ELEM_VENDOR_SPEC_PAYLOAD			= 37,
	CW_ELEM_WTP_BOARD_DATA				= 38,
	CW_ELEM_WTP_DESCRIPTOR				= 39,
	CW_ELEM_WTP_FALLBACK				= 40,
	CW_ELEM_WTP_FRAME_TUNNEL_MODE		= 41,
	CW_ELEM_WTP_IPV4_ADDRESS			= 42,
	CW_ELEM_WTP_MAC_TYPE				= 44,
	CW_ELEM_WTP_NAME					= 45,
	CW_ELEM_WTP_OPERAT_STATISTICS		= 45,
	CW_ELEM_WTP_RADIO_STATISTICS		= 47,
	CW_ELEM_WTP_REBOOT_STATISTICS		= 48,
	CW_ELEM_WTP_STATIC_IP				= 49,
	CW_ELEM_TRANSPORT_PROTOCOL			= 51,
	CW_ELEM_MTU_DISCOVERY_PADDING		= 52,
	CW_ELEM_ENC_SUPPORT					= 53
} cw_msg_elem_t;

#endif /* ~__CW_MSG_H__ */
